home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 23 / CU Amiga - Super CD-ROM 23 (June 1998).iso / CreatingGames / Utilities / Misc / GMS / GMSDev / Includes / system / tasks.h < prev    next >
Encoding:
C/C++ Source or Header  |  1997-10-27  |  2.3 KB  |  66 lines

  1. #ifndef SYSTEM_TASKS_H
  2. #define SYSTEM_TASKS_H TRUE
  3.  
  4. /*
  5. **  $VER: tasks.h V0.9B
  6. **
  7. **  (C) Copyright 1996-1997 DreamWorld Productions.
  8. **      All Rights Reserved.
  9. */
  10.  
  11. #ifndef DPKERNEL_H
  12. #include <dpkernel/dpkernel.h>
  13. #endif
  14.  
  15. /****************************************************************************
  16. ** A UserData field exists here which you may use if necessary.  Other than
  17. ** this, DO NOT USE ANY TASK FIELDS FOR ANYTHING OTHER THAN DEBUGGING
  18. ** PURPOSES.
  19. */
  20.  
  21. #define TASKVERSION 1
  22. #define TAGS_TASK   ((ID_SPCTAGS<<16)|ID_TASK)
  23.  
  24. struct  DPKTask {
  25.   struct Head Head;                  /* Standard header */
  26.  
  27.   APTR  UserData;                    /* Pointer to user data, no restrictions */
  28.   BYTE  *Name;                       /* Name of the task, if specified */
  29.  
  30.   /*** Private fields ***/
  31.  
  32.   struct MasterPrefs  *MasterPrefs;  /* Library preferences */
  33.   struct ScreenPrefs  *ScreenPrefs;  /* Screen preferences */
  34.   struct SoundPrefs   *SoundPrefs;   /* Sound preferences */
  35.   struct BlitterPrefs *BlitterPrefs; /* Blitter preferences */
  36.  
  37.   APTR   ResourceChain;              /* The resource chain, private */
  38.   LONG   ReqStatus;                  /* Private, used internally */
  39.   LONG   BlitKey;                    /* Resource key */
  40.   LONG   AudioKey;                   /* Resource key */
  41.   APTR   ExecNode;                   /* Task's exec node */
  42.   APTR   DestructStack;              /* Stack to use for DestructCode */
  43.   APTR   DestructCode;               /* Pointer to self destruct code routine */
  44.   BYTE   AlertState;                 /* Private */
  45.   BYTE   Switched;                   /* Set if task is in Switch() */
  46.   WORD   DebugStep;                  /* Debug tree stepping position */
  47.   BYTE   AwakeSig;                   /* Signal for waking this task */
  48.   BYTE   Pad;                        /* Reserved */
  49.  
  50.   LONG   TotalData;                  /* Total data memory in use */
  51.   LONG   TotalVideo;                 /* Total video memory in use */
  52.   LONG   TotalSound;                 /* Total sound memory in use */
  53.   LONG   TotalBlit;                  /* Total blitter memory in use */
  54.  
  55.   /*** Public fields ***/
  56.  
  57.   LONG   empty1;                     /* Reserved */
  58.   BYTE   *Preferences;               /* Preferences directory */
  59. };
  60.  
  61. #define CS_OCS 0
  62. #define CS_ECS 1
  63. #define CS_AGA 2
  64.  
  65. #endif /* SYSTEM_TASKS_H */
  66.